/* *****************************************************************************
  Copyright (C), 2021-2021, Huawei Tech. Co., Ltd.
 ******************************************************************************
  File Name     : comm_board_info.h
  Version       : Initial Draft
  Created       : 2022/3/30
  Last Modified :
  Description   : COMM board info between Driver and MPU
  Function List :
***************************************************************************** */

#ifndef COMM_BOARD_INFO_H
#define COMM_BOARD_INFO_H

#define BOARD_TYPE_TEST_RANGE_START 1
#define BOARD_TYPE_TEST_RANGE_END   29
#define BOARD_TYPE_STRG_RANGE_START 30
#define BOARD_TYPE_STRG_RANGE_END   99
#define BOARD_TYPE_CAL_RANGE_START  100
#define BOARD_TYPE_CAL_RANGE_END    169
#define BOARD_TYPE_CLD_RANGE_START  170
#define BOARD_TYPE_CLD_RANGE_END    239
#define BOARD_TYPE_RSVD_RANGE_START 240
#define BOARD_TYPE_RSVD_RANGE_END   255

typedef enum {
    BOARD_TYPE_MPU_DEFAULT                 = 0,     /* Default config */
    BOARD_TYPE_TEST_EVB_4X25G              = 1,     /* EVB Board */
    BOARD_TYPE_TEST_CEM_2X100G             = 2,     /* 2X100G CEM Card */
    BOARD_TYPE_STRG_SMARTIO_4X32G_FC       = 30,    /* 4X32G  SmartIO FC Card */
    BOARD_TYPE_STRG_SMARTIO_4X25G_TIOE     = 31,    /* 4X25GE SmartIO TIOE Card */
    BOARD_TYPE_STRG_SMARTIO_4X25G_ROCE     = 32,    /* 4X25GE SmartIO ROCE Card */
    BOARD_TYPE_STRG_SMARTIO_4X25G_ROCE_AA  = 33,    /* 4X25GE SmartIO ROCE_AA Card */
    BOARD_TYPE_STRG_SMARTIO_4X25G_SRIOV    = 34,    /* 4X25GE SmartIO container Card */
    BOARD_TYPE_STRG_SMARTIO_4X25G_SRIOV_SW = 35,    /* 4X25GE SmartIO container switch Card */
    BOARD_TYPE_STRG_2X100G_TIOE            = 40,    /* 2X100G SmartIO TIOE Card */
    BOARD_TYPE_STRG_2X100G_ROCE            = 41,    /* 2X100G SmartIO ROCE Card */
    BOARD_TYPE_STRG_2X100G_ROCE_AA         = 42,    /* 2X100G SmartIO ROCE_AA Card */
    BOARD_TYPE_CAL_2X25G_NIC_75MPPS        = 100,   /* 2X25G ETH Standard card 75MPPS */
    BOARD_TYPE_CAL_2X25G_NIC_40MPPS        = 101,   /* 2X25G ETH Standard card 40MPPS */
    BOARD_TYPE_CAL_4X25G_NIC_120MPPS       = 105,   /* 4X25G ETH Standard card 120MPPS */
    BOARD_TYPE_CAL_2X32G_FC_HBA_15MPPS     = 110,   /* 2X32G ETH Standard card FC HBA Card */
    BOARD_TYPE_CAL_2X100G_NIC_120MPPS      = 115,   /* 2X100G ETH Standard card 120MPPS */
    BOARD_TYPE_CLD_2X100G_SDI5_1           = 170,   /* 2X100G SDI 5.1 Card */
    BOARD_TYPE_CLD_2X25G_SDI5_0_LITE       = 171,   /* 2x25G SDI5.0 Lite Card */
    BOARD_TYPE_CLD_2X100G_SDI5_0           = 172,   /* 2x100G SDI5.0 Card */
    BOARD_TYPE_MAX_INDEX                   = 0xFF
} board_type_define_e;

#endif
